문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 Microsoft .NET (문단 편집) === CIL === .NET 프레임워크를 사용하는 언어들로 작성된 소스 코드는 각 언어에 맞는 [[컴파일러]][* C#의 경우 csc라는 이름의 컴파일러가 있다. 따라서 굳이 [[Visual Studio|비주얼 스튜디오]]를 거치지 않아도 컴파일이 가능하긴 하다.]를 거쳐 .NET CLR용 중간 코드인 CIL(Common Intermediate Language)로 컴파일된 후 .exe 파일로 래핑(wrapping)된다.[* .NET Core 애플리케이션은 .dll 파일을 출력한다.] 그리고 .NET CLR은 이 파일을 [[JIT]] 컴파일 방식으로 읽어들여 [[기계어]] 번역을 수행한다. CIL은 .NET CLR이 설치된 곳이라면 어디서든 컴파일이 가능하다. 예로 들어서 Hello World를 출력하는 C# 코드가 {{{#!syntax csharp using System; namespace HelloWorld { public class Program { private static void Main(string[] args) { Console.WriteLine("Hello, World!\n"); Console.ReadLine(); } } } }}} 이라면 컴파일 시 바뀌는 CIL 코드는 ||.class public auto ansi beforefieldinit HelloWorld.Program extends [mscorlib]System.Object { .method private hidebysig static void Main ( string[] args ) cil managed { .maxstack 8 .entrypoint IL_0000: ldstr "Hello, World!\\n" IL_0005: call void [mscorlib]System.Console::WriteLine(string) IL_000A: call string [mscorlib]System.Console::ReadLine() IL_000F: pop IL_0010: ret } .method public hidebysig specialname rtspecialname instance void .ctor () cil managed { .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void [mscorlib]System.Object::.ctor() IL_0006: ret } }|| 이렇게 된다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기